# 作者: 薛文寅仟
# 2025年01月03日23时21分15秒
# 5443912@qq.com

def demo(num, num_list):
    """
    无论传递的参数是可变还是不可变只要针对参
    数使用赋值语句，会在函数内部修改局部变量
    的引用，不会影响到 外部变量的引用
    :param num:
    :param num_list:
    :return:
    """
    print("函数内部代码")
    # num = 200
    # num_list = [4, 5, 6]
    # num = num + num
    num += num
    # num_list.extend(num_list) 由于是调用方法，所以不会修改变量的引用
    # 函数执行结束后，外部数据同样会发生变化
    num_list += [4, 5, 6]
    print(num)
    print(num_list)
    print("函数代码完成")


gl_num = 9
gl_list = [1, 2, 3]
demo(gl_num, gl_list)
print(gl_num)
print(gl_list)